home *** CD-ROM | disk | FTP | other *** search
- package com.extensibility.xml;
-
- import com.extensibility.xml.dt.DataTypeIntf;
- import java.io.IOException;
- import java.util.Vector;
-
- class MSSFlavor extends XDRFlavor implements ExtraMetaDataUIIntf {
- static String NAME = "mss";
- Vector elemDefs;
- Vector elemRefs;
- Vector attrDefs;
- static String[] NAMESPACES = new String[]{"sql", "urn:schemas-microsoft-com:xml-sql"};
-
- MSSFlavor(SchemaIntf var1) {
- super(var1);
- this.createMetaInfo();
- }
-
- public String getFlavorName() {
- return NAME;
- }
-
- public String getExtensionsName() {
- return "Shilo";
- }
-
- protected void createExtensionNamespaces() {
- String[] var1 = this.getNamespaces();
- int var2 = 0;
-
- while(var2 < var1.length) {
- String var3 = var1[var2++];
- String var4 = var1[var2++];
- if (super.schema.getNamedDeclaration(var3, Class.forName("com.extensibility.xml.NamespaceDeclaration")) == null) {
- NamespaceDeclaration var5 = new NamespaceDeclaration(var3, var4);
- super.schema.insertDeclaration(var5, (BaseDeclaration)null);
- }
- }
-
- }
-
- public void parse(URI var1, URI var2, int var3, Object var4) throws IOException {
- super.parse(var1, var2, var3, var4);
- NamespaceDeclaration var5 = super.schema.getNamedNamespace(NAMESPACES[0]);
- if (var5 != null) {
- super.schema.removeDeclaration(var5);
- }
-
- }
-
- protected void createMetaInfo() {
- this.elemDefs = new Vector();
- this.elemRefs = new Vector();
- this.attrDefs = new Vector();
- this.elemDefs.addElement(new MetaPropInfo(this, "relation", "sql:relation", Class.forName("java.lang.String"), 0.1, 80));
- this.elemDefs.addElement(new MetaPropInfo(this, "overflow", "sql:overflow", Class.forName("java.lang.String"), 0.1, 80));
- this.elemDefs.addElement(new MetaPropInfo(this, "id-prefix", "sql:id-prefix", Class.forName("java.lang.String"), 0.1, 80));
- this.elemRefs.addElement(new MetaPropInfo(this, "map-field", "sql:map-field", Class.forName("java.lang.String"), 0.1, 80));
- this.elemRefs.addElement(new MetaPropInfo(this, "relation", "sql:relation", Class.forName("java.lang.String"), 0.1, 80));
- this.elemRefs.addElement(new MetaPropInfo(this, "field", "sql:field", Class.forName("java.lang.String"), 0.1, 80));
- this.elemRefs.addElement(new MetaPropInfo(this, "overflow", "sql:overflow", Class.forName("java.lang.String"), 0.1, 80));
- this.elemRefs.addElement(new MetaPropInfo(this, "limit-field", "sql:limit-field", Class.forName("java.lang.String"), 0.1, 80));
- this.elemRefs.addElement(new MetaPropInfo(this, "limit-value", "sql:limit-value", Class.forName("java.lang.String"), 0.1, 80));
- this.elemRefs.addElement(new MetaPropInfo(this, "datatype", "sql:datatype", Class.forName("java.lang.String"), 0.1, 80));
- this.elemRefs.addElement(new MetaPropInfo(this, "use-cdata", "sql:use-cdata", Class.forName("java.lang.String"), 0.1, 80));
- this.elemRefs.addElement(new MetaPropInfo(this, "url-encode", "sql:url-encode", Class.forName("java.lang.String"), 0.1, 80));
- this.elemRefs.addElement(new MetaPropInfo(this, "relationship", "sql:relationship", Class.forName("java.lang.String"), 0.1, 80, false, true));
- this.attrDefs.addElement(new MetaPropInfo(this, "map-field", "sql:map-field", Class.forName("java.lang.String"), 0.1, 80));
- this.attrDefs.addElement(new MetaPropInfo(this, "relation", "sql:relation", Class.forName("java.lang.String"), 0.1, 80));
- this.attrDefs.addElement(new MetaPropInfo(this, "field", "sql:field", Class.forName("java.lang.String"), 0.1, 80));
- this.attrDefs.addElement(new MetaPropInfo(this, "limit-field", "sql:limit-field", Class.forName("java.lang.String"), 0.1, 80));
- this.attrDefs.addElement(new MetaPropInfo(this, "limit-value", "sql:limit-value", Class.forName("java.lang.String"), 0.1, 80));
- this.attrDefs.addElement(new MetaPropInfo(this, "id-prefix", "sql:id-prefix", Class.forName("java.lang.String"), 0.1, 80));
- this.attrDefs.addElement(new MetaPropInfo(this, "datatype", "sql:datatype", Class.forName("java.lang.String"), 0.1, 80));
- this.attrDefs.addElement(new MetaPropInfo(this, "use-cdata", "sql:use-cdata", Class.forName("java.lang.String"), 0.1, 80));
- this.attrDefs.addElement(new MetaPropInfo(this, "url-encode", "sql:url-encode", Class.forName("java.lang.String"), 0.1, 80));
- this.attrDefs.addElement(new MetaPropInfo(this, "relationship", "sql:relationship", Class.forName("java.lang.String"), 0.1, 80, false, true));
- }
-
- public int getExtraColumnCount(int var1) {
- return this.getCount(var1);
- }
-
- public String getColumnName(int var1, int var2) {
- return this.getInfo(var1, var2).colName;
- }
-
- public Class getColumnClass(int var1, int var2) {
- return this.getInfo(var1, var2).colClass;
- }
-
- public int getInitialColumnWidth(int var1, int var2) {
- return this.getInfo(var1, var2).colInitialWidth;
- }
-
- public double getColumnWeight(int var1, int var2) {
- return this.getInfo(var1, var2).colWeight;
- }
-
- public String getColumnMetaProp(int var1, int var2) {
- return this.getInfo(var1, var2).metaprop;
- }
-
- public boolean isColumnMetaPropList(int var1, int var2) {
- return this.getInfo(var1, var2).isListOfSubElements;
- }
-
- public boolean isColumnMetaPropAttrs(int var1, int var2) {
- return this.getInfo(var1, var2).isSubElementWithAttrs;
- }
-
- public DataTypeIntf getDataType(int var1, int var2) {
- return null;
- }
-
- public String getDefaultValue(int var1, int var2) {
- return null;
- }
-
- public String[] getNamespaces() {
- return NAMESPACES;
- }
-
- protected int getCount(int var1) {
- Vector var2 = this.getInfo(var1);
- return var2 == null ? 0 : var2.size();
- }
-
- protected Vector getInfo(int var1) {
- switch (var1) {
- case 1:
- return this.elemDefs;
- case 2:
- return this.elemRefs;
- case 3:
- case 4:
- return this.attrDefs;
- default:
- return null;
- }
- }
-
- protected MetaPropInfo getInfo(int var1, int var2) {
- return (MetaPropInfo)this.getInfo(var1).elementAt(var2);
- }
- }
-